Page({
  /**
   * 页面的初始数据
   */
  data: {
    info: [],
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    try {
      var value = wx.getStorageSync('dataList')
      var that = this;
      if (value) {
        // 为每个项添加 isChanged 字段
        value = value.map(item => ({ ...item, isChanged: false }));
        that.setData({
          info: value
        })
      }
    } catch (e) {
      // Do something when catch error
    }
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  },

  /**
   * 点击右侧图片更换
   */
  changeImage: function (e) {
    const index = e.currentTarget.dataset.index;
    var shoucang = wx.getStorageSync('shoucang') || [];
    const info = this.data.info.map((item, i) => {
      if (i === index) {
        const newState = !item.isChanged;
        if (newState) {
          // 切换状态为 true 时保存到本地缓存
          shoucang.push({
            imagesUrl: item.imagesUrl,
            title: item.title,
            content: item.content
          });
          wx.setStorageSync('shoucang', shoucang);
          wx.showToast({
            title: '收藏成功',
            icon: 'success',
            duration: 2000
          });
        }
        return {
          ...item,
          isChanged: newState  // 切换状态
        };
      }
      return item;
    });

    this.setData({
      info: info
    });
  }
})
